LD_LIBRARY_PATH=$$(cd $(top_builddir)/.libs && pwd)$${LD_LIBRARY_PATH:+:$${LD_LIBRARY_PATH}} \
PATH=$$(cd $(top_builddir)/tests && pwd):$${PATH} \
$(NULL)
+if BUILDOPT_ASAN
+TESTS_ENVIRONMENT += OT_SKIP_READDIR_RAND=1 G_SLICE=always-malloc
+endif
uninstalled_test_data = tests/ostree-symlink-stamp tests/ostree-prepare-root-symlink-stamp \
tests/ostree-remount-symlink-stamp tests/rofiles-fuse-symlink-stamp
tests/test-parent.sh \
tests/test-pull-archive-z.sh \
tests/test-pull-commit-only.sh \
- tests/test-pull-corruption.sh \
tests/test-pull-depth.sh \
tests/test-pull-mirror-summary.sh \
tests/test-pull-large-metadata.sh \
dist_test_scripts += tests/test-remote-cookies.sh
endif
-# This one uses corrupt-repo-ref.js
-js_tests = tests/test-corruption.sh
+# These call into gjs scripts
+js_tests = tests/test-corruption.sh tests/test-pull-corruption.sh
if BUILDOPT_GJS
-dist_test_scripts += tests/test-corruption.sh
+dist_test_scripts += $(js_tests)
else
EXTRA_DIST += $(js_tests)
endif
])
AC_SUBST(WARN_CFLAGS)
+AC_MSG_CHECKING([for -fsanitize=address in CFLAGS])
+if echo $CFLAGS | grep -q -e -fsanitize=address; then
+ AC_MSG_RESULT([yes])
+ using_asan=yes
+else
+ AC_MSG_RESULT([no])
+fi
+AM_CONDITIONAL(BUILDOPT_ASAN, [test x$using_asan = xyes])
+
# Initialize libtool
LT_PREREQ([2.2.4])
LT_INIT([disable-static])
AM_CONDITIONAL(BUILDOPT_USE_STATIC_COMPILER, test x$with_static_compiler != xno)
AC_SUBST(STATIC_COMPILER, $with_static_compiler)
-dnl for tests
-AS_IF([test "x$found_introspection" = xyes], [
+dnl for tests (but we can't use asan with gjs or any introspection,
+dnl see https://github.com/google/sanitizers/wiki/AddressSanitizerAsDso for more info)
+AS_IF([test "x$found_introspection" = xyes && test x$using_asan != xyes], [
AC_PATH_PROG(GJS, [gjs])
if test -n "$GJS"; then
have_gjs=yes